home *** CD-ROM | disk | FTP | other *** search
- Path: comma.rhein.de!serpens!not-for-mail
- From: mlelstv@serpens.rhein.de (Michael van Elst)
- Newsgroups: comp.sys.amiga.programmer
- Subject: Re: Shared library open and close functions
- Date: 20 Feb 1996 21:05:23 +0100
- Organization: dis-
- Message-ID: <4gd9i3$hsh@serpens.rhein.de>
- References: <510.6619T1238T1638@Th0r.foo.bar> <DMvCKp.MD4@unx.sas.com> <1216.6624T889T380@sn.no>
- NNTP-Posting-Host: serpens.rhein.de
-
- christon@sn.no (Christopher Naas) writes:
-
- >When I link with lib:scmffp to use floating point in sprintf ('%.2f'), I get
- >an error from sc.lib. The library still works fine, though.
-
- >Undefined symbols First Referenced
- >__XCEXIT File 'LIB:sc.lib'
- >Enter a DEFINE value for __XCEXIT (default ___stub):
-
- The problem is the raise() function that is called for math errors and which
- may call _CXBRK() and finally _XCEXIT() to terminate the program.
-
- Nothing if this makes sense in a shared library.
-
- A workaround is to include a function
-
- __regargs void _CXBRK(void) { }
-
- This solves the linker error.
-
- Another possibility is to redefine the whole raise() function.
-
- __regargs int raise(int s) { return 1; }
-
- Regards,
- --
- Michael van Elst
-
- Internet: mlelstv@serpens.rhein.de
- "A potential Snark may lurk in every tree."
-